package jp.sinmetal.trainer.service;

import org.seasar.extension.jdbc.service.S2AbstractService;
import org.seasar.extension.jdbc.where.ComplexWhere;
import org.seasar.extension.jdbc.where.SimpleWhere;

/**
 * 基底サービス
 * @author sin
 *
 * @param <ENTITY>
 */
public abstract class AbstractService<ENTITY> extends S2AbstractService<ENTITY> {
	/**
	 * new SimpleWhreの省略形
	 * @author sin
	 *
	 * @return SimpleWhereインスタンス
	 */
	protected SimpleWhere SW() {
		return new SimpleWhere();
	}

	/**
	 * new ComplexWhereの省略形
	 * @author sin
	 *
	 * @return ComplexWhereインスタンス
	 */
	protected ComplexWhere CW() {
		return new ComplexWhere();
	}

	/**
	 * 外だしＳＱＬを取得する
	 * jp/sinmetal/pokemon/service/に入れている場合はこれを利用する
	 * @author ishimura
	 *
	 * @param sqlFileName ファイル名
	 * @return
	 */
	protected String getSqlFile(String sqlFileName) {
		return String.format("jp/sinmetal/pokemon/service/%s", sqlFileName);
	}
}